<html>
<head>
<title>
Netlab Reference Manual mdnfwd
</title>
</head>
<body>
<H1> mdnfwd
</H1>
<h2>
Purpose
</h2>
Forward propagation through Mixture Density Network.

<p><h2>
Synopsis
</h2>
<PRE>
mixparams = mdnfwd(net, x)
[mixparams, y, z] = mdnfwd(net, x)
[mixparams, y, z, a] = mdnfwd(net, x)
</PRE>


<p><h2>
Description
</h2>

<CODE>mixparams = mdnfwd(net, x)</CODE> takes a mixture density network data
structure <CODE>net</CODE> and a matrix <CODE>x</CODE> of input vectors, and forward
propagates the inputs through the network to generate a structure
<CODE>mixparams</CODE> which contains the parameters of several mixture models.  
Each row of <CODE>x</CODE> represents
one input vector and the corresponding row of the matrices in <CODE>mixparams</CODE> 
represents the parameters of a mixture model for the conditional probability
of target vectors given the input vector.  This is not represented as an array
of <CODE>gmm</CODE> structures to improve the efficiency of MDN training.

<p>The fields in <CODE>mixparams</CODE> are
<PRE>

  type = 'mdnmixes'
  ncentres = number of mixture components
  dimtarget = dimension of target space
  mixcoeffs = mixing coefficients
  centres = means of Gaussians: stored as one row per pattern
  covars = covariances of Gaussians
  nparams = number of parameters
</PRE>


<p><CODE>[mixparams, y, z] = mdnfwd(net, x)</CODE> also generates a matrix <CODE>y</CODE> of
the outputs of the MLP and a matrix <CODE>z</CODE> of the hidden
unit activations where each row corresponds to one pattern.

<p><CODE>[mixparams, y, z, a] = mlpfwd(net, x)</CODE> also returns a matrix <CODE>a</CODE> 
giving the summed inputs to each output unit, where each row 
corresponds to one pattern.

<p><h2>
See Also
</h2>
<CODE><a href="mdn.htm">mdn</a></CODE>, <CODE><a href="mdn2gmm.htm">mdn2gmm</a></CODE>, <CODE><a href="mdnerr.htm">mdnerr</a></CODE>, <CODE><a href="mdngrad.htm">mdngrad</a></CODE>, <CODE><a href="mlpfwd.htm">mlpfwd</a></CODE><hr>
<b>Pages:</b>
<a href="index.htm">Index</a>
<hr>
<p>Copyright (c) Ian T Nabney (1996-9)
<p>David J Evans (1998)

</body>
</html>